#!/bin/bash

# 设置配置主目录
if [ -z "$CONFIG_HOME" ]; then
  export CONFIG_HOME="${HOME}/.mac_sync"
fi

# 设置日志文件
LOG_FILE="${CONFIG_HOME}/logs/node_setup_$(date +%Y%m%d_%H%M%S).log"
mkdir -p "$(dirname "$LOG_FILE")"

# 日志函数
log() {
    echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" | tee -a "$LOG_FILE"
}

# 检测当前 Node.js 版本
NODE_VERSION=$(node -v 2>/dev/null | cut -d 'v' -f2 | cut -d '.' -f1)

if [ -z "$NODE_VERSION" ]; then
    log "❌ 未检测到 Node.js，请先安装 Node.js"
    exit 1
fi

log "检测到 Node.js 版本: v$NODE_VERSION.x"

# 根据版本选择合适的脚本
SCRIPT_DIR="$(dirname "$0")"

if [ "$NODE_VERSION" -le 14 ]; then
    log "分组: legacy (Node.js 14及以下版本)"
    log "正在调用 legacy 版本安装脚本..."
    bash "$SCRIPT_DIR/setup_node_legacy.sh"
elif [ "$NODE_VERSION" -le 19 ]; then
    log "分组: middle (Node.js 15-19)"
    log "正在调用 middle 版本安装脚本..."
    bash "$SCRIPT_DIR/setup_node_middle.sh"
else
    log "分组: modern (Node.js 20+)"
    log "正在调用 modern 版本安装脚本..."
    bash "$SCRIPT_DIR/setup_node_modern.sh"
fi

log "✅ 安装脚本执行完毕"
log "🔍 使用 'node-global' 命令可查看当前全局包目录信息" 